package junit;

import static org.junit.Assert.*;

import java.util.Date;

import metier.AgenceImpl;
import metier.Reservation;
import metier.TypeVehicule;
import metier.Vehicule;

import org.junit.Test;

public class VehiculeTest {

	@Test
	
	public void testReserver() {
		Date dateDepart = new Date(2012,5,4);
		Date dateArrivee = new Date(2012,5,4);
		Vehicule c = new Vehicule(TypeVehicule.CAMION);
		Reservation r = c.reserver(dateDepart, dateArrivee, new AgenceImpl("a1"), new AgenceImpl("a2"));
		
		assertTrue("testReserver OK : La réservation a bien été enregistré dans la liste de réservation du véhicule", c.getListeReservation().contains(r));
		fail("testReserver KO : La réservation n'a pas été enregistré dans la liste de réservation du véhicule");
	}

	@Test
	public void testLibererVehicule() {
		Vehicule c = new Vehicule(TypeVehicule.CAMION);
		Reservation r = new Reservation(new Date(), new Date(), new AgenceImpl("a1"), new AgenceImpl("a2"));
		
		assertFalse("testLibererVehicule OK : La liste de reservation du vehicule ne contient plus la reservation", c.getListeReservation().contains(r));
		fail("testLibererVehicule KO : La liste de reservation du vehicule contient la reservation malgré la suppression");
	}
}
